Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

update ocean, sea ice every 1 day #1219

Open
wants to merge 4 commits into
base: main
Choose a base branch
from
Open

update ocean, sea ice every 1 day #1219

wants to merge 4 commits into from

Conversation

juliasloan25
Copy link
Member

Purpose

Change the timestep for ocean and sea ice models to be 1 day by default (this will be used by all simulations except for that specified by amip_component_dts.yml. Also changes how component model timesteps are chosen from the input config to facilitate making this change.

Sbozzolo and others added 4 commits March 6, 2025 15:03
This commit implements a way to restart simulations by saving both state
and caches of component models, as well as the coupler fields.

Given that caches are complex object, I implemented this using JLD2
files.

The challenges with JLD2 files are that:
- they are not MPI compatible,
- they are not GPU compatible.

For this reason, I have to move everything to the CPU, and have each
process write to its own output. This adds a restriction: only the same
number of MPI process (and the same machine) can be used for restarts.

In addition to this, this approach requires component models to
implement their functions to restore their caches.

Something that can be improved in the future is that, ClimaAtmos is
currently producing two checkpoints, one independently, and one from
ClimaCoupler. This should not be needed, but it is currently needed
because there's no other way to start ClimaAtmos at a different time.

The other problem here is that the MPI test occasionally hangs (as it
does in ClimaAtmos).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants